// 都是防止多次调用,防抖的情况下只会调用一次,节流的是每隔一段时间内只调用一次
// 防抖
let deBounce = (fn, delay) => {
  let timer = null;
  return function (...args) {
      if (timer) {
          clearTimeout(timer);
      }
      timer = setTimeout(()=> {
          fn(...args);
      }, delay)
  }
}
// 节流,当持续触发事件时,保证一定时间段内只调用一次事件处理函数
let throttle = (fn, delay) => {
  let flag = true;
  return function (...args) {
      if (!flag) return;
      flag = false;
      setTimeout(() => {
          fn(...args);
          flag = true;
      }, delay)
  }
}